<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <script src="./js/jquery-1.12.2.min.js"></script>
  <script>
  var mydata01=[
    {
      name:'A',
      CNT:1
    },
    {
      name:'B',
      CNT:2
    },
    {
      name:'C',
      CNT:3
    }  
  ]
  var mydata02=[
    {
      name:'D',
      TOP_CNT:4
    },
    {
      name:'A',
      TOP_CNT:5
    },
    {
      name:'E',
      TOP_CNT:6
    },    
    {
      name:'F',
      TOP_CNT:7
    },
    {
      name:'G',
      TOP_CNT:8
    }
  ]

  //code  根据哪个字段的值相同来合并
  function mergeArr(a,b,code){
    var  temp_arr=[...a , ...b],temp_obj={};
    temp_arr.forEach(function (item,i){
      typeof temp_obj[item[code]] == 'undefined' ? temp_obj[item[code]]=i : temp_arr[temp_obj[item[code]]]={... temp_arr[temp_obj[item[code]]],...item};
    });
    temp_arr.length=a.length;
    console.log(temp_arr)
  }
  mergeArr(mydata01,mydata02,'name')
//   var nameData=[],need_data=[]
//   mydata01.forEach(function(item,i){
//     nameData.push(item.name)
//   })
//   mydata02.forEach(function(item,i){
//     if($.inArray(item.name,nameData)<0){
//       nameData.push(item.name)
//     }
//   })
// // nameData=['A','B','C','E','F','G']
//   need_data=nameData.map(function(item,i){
//     var arr01=mydata01.find(function(demo,i){
//       return item==demo.name
//     })
//     var arr02=mydata02.find(function(newitem,i){
//       return item==newitem.name
//     })
//     return {
//       name:item,
//       CNT:arr01?arr01.CNT:0,
//       TOP_CNT:arr02?arr02.TOP_CNT:0
//     }
//   })

  // console.log(need_data);

//简单办法
  // var arr_one=[{name:'A',id:2},{name:'B',id:3}];
  //  var arr_two=[{name:'A',age:12},{name:'B',age:14}];
  //  var new_arr=null;
  // new_arr=[...arr_one,...arr_two];
  </script>
</body>
</html>